package com.bzkj.msfx.service;

import com.bzkj.common.core.domain.AjaxResult;
import com.bzkj.common.core.page.TableDataInfo;
import com.bzkj.msfx.domain.MsfxDrugInfo;
import org.springframework.web.multipart.MultipartFile;

/**
 * (DrugInfo)表服务接口
 *
 * @author chj
 * @since 2023-10-10 09:42:06
 */

public interface MsfxDrugInfoService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    MsfxDrugInfo queryById(Long id);

    /**
     * 分页查询
     *
     * @param drugInfo 筛选条件
     * @return 查询结果
     */
    TableDataInfo queryByPage(MsfxDrugInfo drugInfo);

    /**
     * 新增数据
     *
     * @param drugInfo 实例对象
     * @param deptId   部门id
     * @return 实例对象
     */
    MsfxDrugInfo insert(MsfxDrugInfo drugInfo, Long deptId);

    /**
     * 修改数据
     *
     * @param drugInfo 实例对象
     * @return 实例对象
     */
    MsfxDrugInfo update(MsfxDrugInfo drugInfo);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(Long id);

    /**
     * 药品信息文件上传与解析
     *
     * @param file     上传文件
     * @return 文件上传结果
     */
    AjaxResult parsingFile(MultipartFile file);

    /**
     * 根据typeNo查询药品信息
     *
     * @param typeNo 药品子类编码
     * @return 查询结果
     */
    AjaxResult queryByNo(String typeNo);

}
